سفارش تبلیغ
صبا ویژن
هاستینگ
   مشخصات مدیر وبلاگ
 
    آمارو اطلاعات

بازدید امروز : 0
بازدید دیروز : 0
کل بازدید : 7079
کل یادداشتها ها : 48

< 1 2 3 4 >
نوشته شده در تاریخ 91/10/30 ساعت 12:41 ع توسط هاستینگ


اعمال مسائل امنیتی در سرور های لینوکس Cpanel (همراه با دسترسی Root)
این نکته رو توجه داشید در سرور های مجازی VPS شما دسترسی به Kernel سرور ندارید و کلیه عملیات های مربوط به Kernel رو باید از سرویس دهندتون درخواست کنید . البته این خیلی بای شما بد نیست چون up2date کردن kernel کار دشواری است و این امر باعث میشه سرور شما تا حد زیادی از دست hacker ها و spammer ها در امان باشه ( به این صورت که اونها رو محددود می کنه در دسترسی به سرور شما) .
مدیریتformmail
Formmail برنامه است در cpanel که هکر ها و spammer ها با ان امکان ارسال هرزنامه یا spam را بوسیله inject کردن این سرویس بدست می آورند. برای ایمن سازی این script ها به راحتی انها را جستجو کنید :
find / -name "[Ff]orm[mM]ai*"
find / -name "[Cc]giemai*"
این دو command کلیه فایل های با این نام رو روی سرور جستجو می کند . سپس باید همه ی این فعال ها را غیر قابل دسترس کنید :

chmod a-rwx ادرس فایل مورد نظر
حتما می پرسید –rwx چی کاری انجام می دهد :
- یعنی این امکان حذف شود. r مخفف read یعنی خواندن این فایل . w مخفف write یعنی نوشتن برروی این فایل و x مخفف execute یعنی اجرای کردن این فایل . کل دستور دسترسی به این فایل رو از بین می برد.
فراموش نکیند حتما به مشتریانتون هشدار بدید که سرور formmail پشتیبانی نمی کند به دلایل امنیتی .
* نصب Root kit checke
یک هکر همیشه اولین کاری که روی یک سرور انجام میده نصب برنامه هایی هست که راه رو برای ارتباط های بعدی هکر به سرور هموارتر و اسان تر کنه . این برنامه به صورت روزانه سرور رو چک می کنه که ایا چنین برنامه هایی روی سررو نصب شدن یا نه !؟
فراموش نکنید چند وقت یک بار این برنامه را update کنید تا نسخه های جدیدتر رو در اختیار داشته باشید.
برای نصب مراحل زیر رو انجام بدید :

cd /root/
wget ftp://ftp.pangeia.com.br/pub/seg/pac/chkrootkit.tar.gz
tar xvzf chkrootkit.tar.gz
cd chkrootkit*
make sense
برای اجرای برنامه command زیر را اجرا کنید :

/root/chkrootkit-0.44/chkrootkit
حتما چک کنید که ایا در cron tab نصب شده یا نه (crontab –e)
این هم یکسری دستور های پرکربرد برای استفاده از این برنامه :

./chkrootkit
./chkrootkit -q
./chkrootkit -x | more
* نصب Warning و پیغام هشدار وقتی کسی به سرور شما connect میشه
این تنظیم باعث میشه به محض اینکه کسی به سرور شما از طریق ssh وصل بشه برای شما ایمیل اخطار بیاد که اگر دسترسی به سرور مسکوک بود اون رو Kill کرده یا به IP اون شخص اخطار بدید :
ابتدا :

Cd ~
pico .bash_profile
اخر صفحه باز شده خط زیر رئ اضافه کنید :
echo "ALERT - Root Shell Access on:" `date` `who` | mail -s "Alert: Root Access from `who | awk "{print $6}"`".
فراموش نکنید به جای . ایمیل خودتون رو جایگزین کنید .
Ctrl + X و Save و بعد خارج می شوید.
حال برای تنظمی پیغام هشدار در موقع وصل شدن :

pico /etc/motd
این پیغامی که تمایل دارید نمایش داده بشه رو وارد کنید و بعد تنظمیات رو Save کنید .



  



نوشته شده در تاریخ 91/10/30 ساعت 12:40 ع توسط هاستینگ


مروری کوتاه بر حملات DDos
یک حمله Denial Of Service یا به طور اختصاری، DOS رویدادی است که در آن یک کاربر یا سازمان را از دریافت خدمات از یک منبع محروم می سازد. که در شرایط عادی انتظار آن خدمات را دارد.
نوعاً فقدان این نوع از خدمات به عنوان کاستی در ارائه خدمات شبکه می باشد. همچون سرویس Email که سرویسی فعال بوده و چنانچه این سرویس دچار وقفه ای هر چند کوتاه گردد تمام اتصالات شبکه را که از این سرویس سود می برند مختل خواهد کرد.
در این مقاله نگاهی خواهیم داشت به حملات DOS و DDOS با عنوان Distributed Denial Of Service که این حملات از طرف میزبانهای متعدد برای دستیابی به اهداف خاص صورت می پذیرند.

حملات DOS
برای درک بیشتر حملات DOS و پیامدهای آن ابتدا باید شناختی بنیادین از انواع این حملات داشته باشیم.
اگر چه ارتقاء شناخت ما از سطح حملات DOS به DDOS مقدماتی و متداول می باشد ولی تفاوت میان این دو بسیار مهم است.
در ادامه مطلبی که در بالا گفته شد باید بیان کرد که نباید از حملاتی که در چهارچوب اهداف حملات DOS متوجه ما می باشد غافل بود بلکه مراقبت از زیرساختهای خدماتی و محاسباتی شبکه معمولاً در برخی از موارد ما را از پیامدهای منفی این نوع حملات نفس گیر در امان می دارد.
عموماً این نوع از حملات در اکثر موارد باعث توقف و از کار افتادن System قربانی نمی شود بلکه معمولاً حملات موفق DOS به منظور کاستن هر چه بیشتر کیفیت خدمات ارائه شده توسط سرویس دهنده ها شکل می گیرند. این حملات با درجات مختلفی از تخریب انجام می شوند که در اغلب موارد سرویس دهنده ای که مورد هدف این نوع از حملات قرار می گیرد دیگر قادر به ارائه خدمات نخواهد بود.
هدف این نوع از حملات یک برداشت سطحی از این نوع حملات، حمله به منظور تسخیر Server می باشد که در اکثر موارد تعبیری نادرست و غیر واقعی به نظر می رسد اما هدف بنیادین از حملات DOS ایجاد وقفه در ارائه خدمات از جانب سرویس دهنده به سرویس گیرنده می باشد. خواه این خدمات مربوط به میزبانی با یک سرویس دهنده باشد یا خواه مربوط به شبکه ای عظیم و بی نقص.
این حملات بار بسیار زیادی (بالاتر از ظرفیت و توان شبکه) بر شبکه تحمیل می کند که همین امر باعث ترافیک بالای شبکه شده و سرویس دهنده هائی که مشغول ارائه خدمات به سرویس گیرنده می باشند را دچار وقفه هائی گاه طولانی مدت می کند.
شکل های بسیار متفاوتی از حملات DOS وجود دارند که کشف این حملات و یا منحرف ساختن آنها ممکن است کمی دشوار باشد. طی روزها و هفته ها که از کشف جدیدترین حمله می گذرد ممکن است شخص با هوش دیگری این نوع از حمله را با شکلی دیگر و از جائی دیگر شبیه سازی و اجرا کند. بنابر این نباید فقط به مقابله با یک حمله خاص پرداخت بلکه باید در برابر تمام اشکال مختلف این نوع از حملات پایداری و مقاومت کرد.
بیشتر حملات DOS انجام شده روی یک شبکه با جستجوئی ترکیبی برای یافتن نقاط ضعف در ساختار امنیتی موجود در پروتکل اینترنت (IP) نسخه چهارم شروع می شود. هکرها می دانند که این مشکلات امنیتی به برنامه های کاربردی و پروتکل های سطوح بالاتر نیز منتقل شده اند که وجود این نقاط ضعف باعث به وجود آمدن پروتکل اینترنت (IPv6) شد.
توجه به منبع بسته ها و بررسی صحت و درستی آنها با استفاده از Header های احراز هویت در پروتکل IPv6 انجام می گیرد. هر چند اصلاح ساختار این پروتکل در چنین شرایطی امری است ضروری ولی باید متذکر شد که پروتکل IPv6 نیز هیچ مشکلی را برای ما حل نخواهد کرد زیرا که هنوز به صورت عمومی و کلی مورد استفاده قرار نگرفته است.
حملات DOS فقط از جانب سیستمهای Remote سرچشمه نمی گیرند، بلکه گاهی اوقات از جانب ماشینهای Local یا محلی نیز صورت می پذیرند.
به طور کلی شناسائی و مقابله با حملات محلی ساده تر می باشد زیرا پارامترهای به وجود آورنده مشکل، به سادگی قابل تشخیص می باشند. مثال عمومی از این نوع حملات بمب های خوشه ای هستند که بصورت مکرر باعث تحلیل منابع سیستمهای ما می شوند.
هرچند حملات DOS خودشان به تنهائی خطری برای بخش مهم اطلاعات (محرمانه بودن، درستی و صحت، یکپارچگی) محسوب نمی شوند ولی می توانند راه هائی را به شبکه باز کنند که نرم افزارهای جاسوسی بتوانند در زمان مناسب از آن مسیرها استفاده کرده و به خواص مهم اطلاعات لطمه بزنند.
اگر چه مدیران شبکه ها و سازمانهای امنیتی در تلاش برای اصلاح و برطرف ساختن این مشکلات هستند اما نفوذگران نیز همیشه به دنبال راههائی جدیدی برای پیاده سازی این قبیل از حملات خواهند بود.
این آشفتگی ها و هرج و مرج باعث در هم شکسته شدن سیستم ها و از بین رفتن امنیت اطلاعات شده و از طرفی هکرهای ورزیده و با تجربه ای هستند که می توانند هر اشتباه و لغزشی را بیابند و از این سوراخهای موجود در شبکه نهایت استفاده را ببرند .

آشنائی با حملات
از آنجا که حملات طغیان بسته های دیتا معمولاً تلاش می کنند منابع پهنای باند و پردازش را خلع سلاح کنند، میزان بسته ها و حجم دیتای متناظر با رشته بسته ها عوامل مهمی در تعیین درجه موفقیت حمله هستند. بعضی از ابزارهای حمله خواص بسته ها را در رشته بسته ها به دلایلی تغییر می دهند:
1- آدرس IP منبع: در بعضی موارد، یک آدرس IP منبع ناصحیح، (روشی که جعل IP نامیده می شود) برای پنهان کردن منبع واقعی یک رشته بسته استفاده می شود. در موارد دیگر، جعل IP هنگامی استفاده می شود که رشته های بسته به یک یا تعداد بیشتری از سایت های واسطه فرستاده می شوند تا باعث شود که پاسخ ها به سمت قربانی ارسال شود. مثال بعدی در مورد حملات افزایش بسته است. برای مثال می توان به smurf و fraggle اشاره کرد.
2- پورت های منبع/مقصد: ابزار حمله طغیان بسته بر اساس TCP و UDP گاهی اوقات پورت منبع و یا مقصد را تغییر می دهند تا واکنش توسط ***** کردن بسته را مشکل تر کنند.
3- مقادیر IP Header: در نهایت در ابزار حمله DoS مشاهده کرده ایم که برای مقدار دهی تصادفی، مقادیر Header هر بسته در رشته بسته ها طراحی شده اند که تنها آدرس IP مقصد است که بین بسته ها ثابت می ماند. بسته ها با خواص ساختگی به سادگی در طول شبکه تولید و ارسال می شوند. پروتکل TCP/IP به آسانی مکانیزم هایی برای تضمین پیوستگی خواص بسته ها در هنگام تولید و یا ارسال نقطه به نقطه بسته ها ارائه نمی کند. معمولاً یک نفوذگر فقط به داشتن اختیار کافی روی یک سیستم برای بکارگیری ابزار و حملاتی که قادر به تولید و ارسال بسته های با خواص تغییریافته باشند، نیاز دارد.

ژوئن 1999، آغاز بکارگیری ابزار DoS با چندین منبع یا DDos Distributed DoS بود. روش های حمله DoS در این قسمت به یک تقسیم بندی کلی درباره انواع حملات DoS می پردازیم:
Smurf یا Fraggle: حملات smurf یک از مخرب ترین حملات DoS هستند. در حمله Smurf (حمله براساس افزایش بسته های ICMP)، نفوذگر یک تقاضای اکوی Ping یا همان ICMP به یک آدرس ناحیه می فرستد. آدرس منبع تقاضای اکو، آدرس IP قربانی است. (از آدرس IP قربانی بعنوان آدرس برگشت استفاده می شود)
بعد از دریافت تقاضای اکو، تمام ماشین های ناحیه پاسخ های اکو را به آدرس IP قربانی می فرستند. در این حالت قربانی هنگام دریافت طغیان بسته های با اندازه بزرگ از تعداد زیادی ماشین، از کار خواهد افتاد. حمله Smurf برای ازکار انداختن منابع شبکه سیستم قربانی از روش مصرف پهنای باند استفاده می کند. این حمله این عمل را با استفاده از تقویت پهنای باند نفوذگران انجام می دهد. اگر شبکه تقویت کننده 100 ماشین دارد، سیگنال می تواند 100 برابر شود و بنابراین حمله کننده با پهنای باند پائین (مانند مودم 56 کیلوبیتی) می تواند سیستم قربانی را با پهنای باند بیشتری (مانند اتصال T1) را از کار بیندازد.
حمله Fraggle (تقویت بسته UDP): در حقیقت شباهت هایی به حمله Smurf دارد. حمله Fraggle از بسته های اکوی UDP بر طبق همان روش بسته های اکوی ICMP در حمله Smurf استفاده می کند. Fraggle معمولاً به ضریب تقویت کمتری نسبت به Smurf می رسد و در بیشتر شبکه ها اکوی UDP سرویسی با اهمیت کمتر نسبت به اکوی ICMP است، بنابراین Fraggle عمومیت Smurf را ندارد. SYN Flood حمله طغیان SYN قبل از کشف حمله Smurf بعنوان مخرب ترین شیوه حمله DoS بشمار می رفت. این روش برای ایجاد حمله DoS بر اساس قحطی منابع عمل می کند. در طول برقراری یک ارتباط معمولی TCP، سرویس گیرنده یک تقاضای SYN به سرویس دهنده می فرستد، سپس سرور با یک ACK/SYN به کلاینت پاسخ می دهد، در نهایت کلاینت یک ACK نهایی را به سرور ارسال می کند و به این ترتیب ارتباط برقرار می شود. اما در حمله طغیان SYN، حمله کننده چند تقاضای SYN به سرور قربانی با آدرس های منبع جعلی بعنوان آدرس برگشت، می فرستد. آدرس های جعلی روی شبکه وجود ندارند. سرور قربانی سپس با ACK/SYN به آدرس های ناموجود پاسخ می دهد. از آنجا که هیچ آدرسی این ACK/SYN را دریافت نمی کند، سرور قربانی منتظر ACK از طرف کلاینت می ماند. ACK هرگز نمی رسد و زمان انتظار سرور قربانی پس از مدتی به پایان می رسد. اگر حمله کننده به اندازه کافی و مرتب تقاضاهای SYN بفرستد، منابع موجود سرور قربانی برای برقراری یک اتصال و انتظار برای این ACK های در حقیقت تقلبی مصرف خواهد شد.
این منابع معمولاً از نظر تعداد زیاد نیستند، بنابراین تقاضاهای SYN جعلی حتی با تعداد نسبتاً کم می توانند باعث وقوع یک حمله DoS شوند. حملات DNS در نسخه های اولیه BIND (Berkely Internet Name Domain)، حمله کنندگان می توانستند بطور مؤثری حافظه نهان یک سرور DNS را که در حال استفاده از عملیات بازگشت برای جستجوی یک ناحیه بود که توسط این سرور سرویس داده نمی شد مسموم کنند. زمانی که حافظه نهان مسموم می شد، یک کاربر قانونی به سمت شبکه مورد نظر حمله کننده یا یک شبکه ناموجود هدایت می شد. این مشکل با نسخه های جدیدتر BIND برطرف شده است. در این روش حمله کننده اطلاعات DNS غلط که می تواند باعث تغییر مسیر درخواست ها شود ارسال می کند. حملات DDoS حملات DDoS (Distributed Denial of Service) حمله گسترده ای از DoS است. در اصل DDos حمله هماهنگ شده ای برعلیه سرویس های موجود در اینترنت است.
در این روش حملات DoS بطور غیرمستقیم از طریق تعداد زیادی از کامپیوترهای هک شده بر روی کامپیوتر قربانی انجام می گیرد. سرویس ها و منابع مورد حمله «قربانی های اولیه» و کامپیوترهای مورد استفاده در این حمله «قربانی های ثانویه» نامیده می شوند. حملات DDoS عموماً در از کار انداختن سایت های کمپانی های عظیم از حملات DoS مؤثرتر هستند. انواع حملات DDoS عموماً حملات DDoS به سه گروه Trinooو TFN/TFN2K و Stecheldraht تقسیم می شوند. Trinoo Trinoo در اصل از برنامه های Master/Slave است که با یکدیگر برای یک حمله طغیان UDP بر علیه کامپیوتر قربانی هماهنگ می شوند. در یک روند عادی، مراحل زیر برای برقراری یک شبکه Trinoo DDoS واقع می شوند:
مرحله1: حمله کننده با استفاده از یک میزبان هک شده، لیستی از سیستم هایی را که می توانند هک شوند را گردآوری می کند. بیشتر این پروسه بصورت خودکار از طریق میزبان هک شده انجام می گیرد. این میزبان اطلاعاتی شامل نحوه یافتن سایر میزبان ها برای هک در خود نگهداری می کند.
مرحله2: به محض اینکه این لیست آماده شد، اسکریپت ها برای هک کردن و تبدیل آنها به اربابان (Masters) یا شیاطین (Daemons) اجراء می شوند. یک ارباب می تواند چند شیطان را کنترل کند. شیاطین میزبانان هک شده ای هستند که طغیان UDP اصلی را روی ماشین قربانی انجام می دهند.
مرحله3: حمله DDoS هنگامی که حمله کننده فرمانی به میزبانان Master ارسال می کند، انجام می گیرد. این اربابان به هر شیطانی دستور می دهند که حمله DoS را علیه آدرس IP مشخص شده در فرمان آغاز کنند و با انجام تعداد زیادی حمله DoS یک حمله DDoS شکل می گیرد. TFN/TFN2K TFN (Tribal Flood Network) یا شبکه طغیان قبیله ای، مانند Trinoo، در اصل یک حمله Master/Slave است که در آن برای طغیان SYN علیه سیستم قربانی هماهنگی صورت می گیرد. شیاطین TFN قادر به انجام حملات بسیار متنوع تری شامل طغیان ICMP، طغیان SYN و حملات Smurf هستند، بنابراین TFN از حمله Trinoo پیچیده تر است. TFN2K نسبت به ابزار TFN اصلی چندین برتری و پیشرفت دارد. حملات TFN2K با استفاده از جعل آدرس های IP اجرا می شوند که باعث کشف مشکل تر منبع حمله می شود. حملات TFN2K فقط طغیان ساده مانند TFN نیستند.
آنها همچنین شامل حملاتی می شوند که از شکاف های امنیتی سیستم عامل ها برای بسته های نامعتبر و ناقص سوءاستفاده می کنند تا به این ترتیب باعث از کار افتادن سیستم های قربانی شوند. حمله کنندگان TFN2K دیگر نیازی به اجرای فرمان ها با وارد شدن به ماشین های مخدوم (Client) )به جای Master در TFN) ندارند و می توانند این فرمان ها را از راه دور اجراء کنند.
ارتباط بین Client ها و Daemon ها دیگر به پاسخ های اکوی ICMP محدود نمی شود و می تواند روی واسط های مختلفی مانند TCP و UDP صورت گیرد. بنابراین TFN2K خطرناک تر و همچنین برای کشف کردن مشکل تر است. Stacheldraht کد Stacheldraht بسیار شبیه به Trinoo و TFN است اما Stacheldraht اجازه می دهد که ارتباط بین حمله کننده و Masterها (که در این حمله Handler نامیده می شوند) رمزنگاری شود؛ عامل ها می توانند کد خود را بصورت خودکار ارتقاء دهند، می توانند اقدام به انواع مختلفی از حملات مانند طغیان های ICMP، طغیان های UDP و طغیان های SYN کنند.



  



نوشته شده در تاریخ 91/10/30 ساعت 12:38 ع توسط هاستینگ


درود به همه دوستان عزیز، اینبار میخوام راجع به Confronting With DDOS یعنی مقابله با حملات DDOS شرح بدم:


یکی از راه های مفید و آسان پیدا کردن آی پی هست که تعداد اتصالاتش (منظور همون connection هست) به سرور از حالت عادی بیشتر باشه . برای این کار کافیه از دستور زیر استفاده کنیم تا IP های که به سرور متصل هستند رو پیدا کنیم


کد:

netstat -anp |grep "tcp\|udp" | awk "{print $5}" | cut -d: -f1 | sort | uniq -c | sort -n

و با دستور زیر می تونیم تعداد اتصالات به سرور را مشخص کنیم :


کد:

netstat -n | grep :80 |wc -l

اگر این تعداد بیش از حد معمول بود شما باید به حمله شک کنید و آی پی مورد نظر رو از دستور اول پیدا کنید. حال که آیپی رو پیدا کردیم به راحتی می توانیم در Iptable یا فایروال خودتون قرار بدین و از این طریق دسترسی اون آی پی رو به سرور ببندین و باعث جلوگیری از حمله DDos اون فرد بشین...

فرمان های بستن یک آی پی به وسیله آی پی تیبل :

کد:

iptables -A INPUT 1 -s IPADRESS -j DROP/REJECT service iptables restart service iptables save

به جای IPADRESS آی پی مورد نظر رو وارد میکنین.

سپس تمامی اتصالات به آپاچی رو Kill میکنین و آپاچی رو رستارت می کنین

کد:

killall -KILL httpd service httpd startssl

یه راه دیگه هم هستش...
البته این ماژول که روی اپاچی نصب میشه 100 درصد کافی نیست و البته در بعضی مواقع باعث از کار افتادن front page روی سرور میشه .
این ماژول که روی apache نصب میشه از ارسال تعداد زیاد request های ناخواسته به webserver جلوگیری می کنه . این تنظیماتی که من اینجا نوشتم از حملات DOS برای 10 دقیقه برای هر ip جلوگیری می کنه توجه داشته باشید وارد کردن عدد بالا به جای این 10 دقیقه ممکنه باعث بشه بعضی از کاربران هم واقعا attacker نیستند جلوشون گرفته بشه .
اگر نسخه Apache 1.3.x دارید :


کد:

command----- cd /usr/local/src wget . tar -zxf mod_evasive_1.10.1.tar.gz cd mod_evasive /usr/local/apache/bin/apxs -cia mod_evasive.c -----command-----
اگر نسخه ی Apache 2.0.x دارید:

کد:

-----command----- up2date -i httpd-devel cd /usr/local/src wget . tar -zxf mod_evasive_1.10.1.tar.gz cd mod_evasive /usr/sbin/apxs -cia mod_evasive20.c -----command-----

حالا باید این ماژول رو در تنظمیات apache تون اضافه کنید و تنظیمات لازمش رو انجام بدید : (برای apache 1.3.x )

کد:

DOSHashTableSize 3097 DOSPageCount 5 DOSSiteCount 100 DOSPageInterval 2 DOSSiteInterval 2 DOSBlockingPeriod 600

از نوشته هاش کاملا مشخصه که هر parametr برای چی استفاده شده.
تنضیمات httpd.conf برای نسخه ی apache 2.0.x (توجه داشته باشید نسخه رو درست انتخاب کنید)

کد:

DOSHashTableSize 3097 DOSPageCount 5 DOSSiteCount 100 DOSPageInterval 2 DOSSiteInterval 2 DOSBlockingPeriod 10 DOSBlockingPeriod 600

بعد از وارد کردن تنظیمات فوق فایل httpd.conf رو ذخیره کنید و وب سرور رو با دستور service httpd restart ری استارت کنید .
اگر خواستید که هر وقت یک ip بسته میشه برای شما alert میل کنه این خط رو به تنظیمات فوق اضافه می کنید : DOSEmailNotify root که به جای root می تونید آدرس ایمیلتون رو وارد کنید .

قابل ذکرکه این ماژول از طریق /usr/bin میل میزنه حالا اگر دستور میل شما جای دیگه هست باید یه sybmlink برای اونجا بسازیر که ایمیل ها به دستتون برسه .



  



نوشته شده در تاریخ 91/10/30 ساعت 12:37 ع توسط هاستینگ


برای نصب MikroTik ابتدا باید minimum hardware requirment آن را بررسی کنیم که داخل سایت رسمی . نوشته شده است. اما به طور تجربی برای 1Mbps پهنای باند و سرویسهایی مثل NAT , Filtering , Bandwidth manager , DNS حد افل یک کامپیوتر pentium 2 به همراه 64MB فضای RAM و یک هارد دیسک 2.1GB یا کمتر و 2 عدد کارت شبکه کافی است.
برای نصب از روی CD باید ابتدا image آن را از لینکی که در آخر مقاله آمده دانلود کرده و بر روی CD به صورت image رایت کرده به صورتی که CD پس از write کردن bootable باشد.
CD را داخل cd-rom سیستمس که میخواهید MikroTik روی آن نصب کنید قرار دهید. و first boot device کامپیوتر خود را روی cd-rom قرار دهید. بعد از بوت شدن از روی CD یک صفحه باز خواهد شد که لیست service ها را نشان میدهد که می توان با spacebar آنها را انتخاب و یا از انتخاب خارح کرد. بعد از انتخاب package های مربوطه کلید "i" را فشار می دهیم. 2 عدد سوال از شما پرسیده می شود 1- سیستم به شما می گوید که با نصب MikroTik تمامی اطلاعات روی هارد دیسک شما پاک خواهد شد 2-از شما سوال می شود که اگر قبلا روی سیستم شما MikroTik نصب شده است آیا می خواهید تنظیمات قبلی نگهداری شوند؟ که اگر در دو حالت حرف "y" را وارد کرده و کلید ENTER را فشار دهیم سیستم شروع به نصب می کند.

بعد از کامل شدن نصب یک پیغام ظاهر می شود که نصب شما به پایان رسیده است و کلیدENTER را برای Reboot شدن سیستم خود فشار دهید.
سپس سیستم Reboot شده و روتر شما آماده استفاده است.

تنظیمات MikroTik

اختصاص IP address به کارت های شبکه:

ما یک LAN را در نظر می گیریم که از طریق MikroTik به یک روتر متصل و از همین طریق به اینترنت متصل است. فرض می کنیم که IP روتر ما 217.219.100.1 255.255.255.128 و IP شبکه داخلی ما 172.16.0.0 255.255.255.0 بنابر این IP کارت شبکه خارجی ما 217.219.100.2 255.255.255.128 و IP کارت شبکه داخلی ما 172.16.0.1 255.255.255.0 و default gateway ما 217.219.100.1 می شود.
برای انجام دادن تنظیمات روتر ابتدا باید به آن login کنیم. Username و password روتر به صورت پیش فرض admin با پسورد blank (خالی) است. یوزر و پسورد را وارد می کنیم و وارد میشویم.
ابتدا باید IP ها را set کنیم. برای اینکار command های زیر را وارد می کنیم:

[admin@MikroTik] ip address> add address=217.219.100.2/25 interface=ether0
[admin@MikroTik] ip address> add address=172.16.0.1/24 interface=ether1
[admin@MikroTik] ip address> print
Flags: X - disabled, I - invalid, D - dynamic
# ADDRESS NETWORK BROADCAST INTERFACE
0 217.219.100.2/25 217.219.100.0 217.219.100.127 ether0
1 172.16.0.1 172.16.0.0 172.16.0.255 ether1
[admin@MikroTik] ip address> ر[admin@MikroTik] ip address> add address=217.219.100.2/25 interface=ether0

اکنون IP های ما add شده اند. برای اینکه یک default gateway برای روتر مشخص کنیم باید یک static route برای آن بنویسیم. برای این کار command های زیر را وارد می نمائیم:

[admin@MikroTik] ip route> add gateway=217.219.100.1
[admin@MikroTik] ip route> print
Flags: X - disabled, A - active, D - dynamic,
C - connect, S - static, r - rip, b - bgp, o - ospf
# DST-ADDRESS G GATEWAY DISTANCE INTERFACE
1 ADC 217.219.100.0/25 ether0
2 ADC 172.16.0.0/24 ether1
3 A S 0.0.0.0/0 r 217.219.100.1 ether0
[admin@MikroTik] ip route>
اکنون روتر شما به اینترنت متصل است برای تست آن میتوانید یک IP داخل اینترنت را پینگ کنید به ترتیب زیر:
[admin@MikroTik] > ping 4.2.2.1
4.2.2.1 64 byte ping: ttl=237 time=256 ms
4.2.2.1 64 byte ping: ttl=237 time=413 ms
4.2.2.1 64 byte ping: ttl=237 time=311 ms
4.2.2.1 64 byte ping: ttl=237 time=283 ms
5 packets transmitted, 4 packets received, 20% packet loss
round-trip min/avg/max = 256/315.7/413 ms
[admin@MikroTik] >

تنظیم NAT در روتر:

در اینجا ما فقط می خواهیم آدرس های شبکه داخلی به یک آدرس خارجی و معتبر در اینترنت ترجمه شود. پس باید از srcnat استفاده کنیم. که هم می توان از masquerade استفاده کرد هم می توان از srcnat به همراه وارد کردن آدرس شبکه داخلی از طریق فیلد to-address استفاده کرد. ما اینجا هر دو روش را توضیح خواهیم داد.
Masquerade
در این حالت فقط کافی است اینترفیس خروجی را مشخص کنیم که به ترتیب زیر عمل می کنیم:

/ip firewall nat add chain=srcnat action=masquerade out-interface=ether0
به این ترتیب کلیه IP هایی که در شبکه ما هستند از هر اینترفیسی که باشند اگر روتر را default gateway خود قرار دهند به اینترنت متصل می گردند.
Srcnat
در این حالت ما یک یا چند IP خاص را به یک IP ولید NAT می کنیم. در این حالت امنیت و کنترل بیشتری روی شبکه خود داریم.
/ip firewall nat add chain=srcnat src-address=172.16.0.0/24 action=src-nat to-addresses=217.219.100.2
در حالت فوق هر کامپیوتر با IP در رنج 172.16.0.0 255.255.255.0 و default gateway 172.16.0.1 می تواند از اینترنت استفاده کند. ما میتوانیم به جای یک رنج IP یک IP خاص یا یک رنج مخدود ت را انتخاب کنیم.

 

تنظیمات Filter
رول های Filter بسته به نیاز ما باید ساخته شوند . ما فعلا فرض میگیریم که می خواهیم ابتدا تنها به 3 کامپیوتر اجازه استفاده از اینترنت را بدهیم و برای همه پورت 135 را ببندیم و برای کلیه کامپیوتر ها ping بسته باشد و پورت telnet روتر برای همه بسته باشد. برای اعمال فوق الذکر به این ترتیب عمل می کنیم.
ما قصد بستن پورت 135 برای کلیه IP ها را داریم پس رول زیر را می نویسیم:
/ip firewall filter add chain=forward dst-port=135 protocol=tcp action=drop
به این ترتیب تمام درخواستها به این پورت drop می شوند.

حال باید رولی را ایجاد کنیم که ping بسته شود این رول نیز مانند رول قبل است:
/ip firewall filter add chain=forward protocol=icmp action=drop
و اما رول بعد بستن پورت telnet به روتر:
در این حالت باید chain را input قرار دهیم به معنی تمام پکت های ورودی به مقصد روتر.
/ip firewall filter add chain=input protocol=tcp dst-port=23 action=drop
اکنون ما می خواهیم تنها 3 کامپیوتر به اینترنت دسترسی داشته باشند پس باید هر پکتی که قصد عبور از روتر را دارد و از این 3 کامپیوتر خاص صادر شده است اجازه عبور داده شده و بقیه پکت ها که قصد عبور از روتر را دارند drop شوند. پس اول باید رول های دسترسی سپس رول عدم دسترسی بقیه نوشته شود. در filtering ترتیب رول ها بسیار مهم است چون روتر به ترتیب از بالا به پائین رول ها را خوانده و عمل می کند.
ما با رول های بالا دسترسی سه IP را باز و دسترسی کلیه پکت های دیگر را محدود کرده ایم.
اکنون تنظیمات ما به پایان رسیده است. ما یه روتر داریم که میان شبکه داخلی و خارجی ما قرار دارد روی روتر ما یک IP ولید به یک رنج IP اینولید NAT شده است. ما روی روتر به وسیله packet filtering از شبکه داخلی خود و روتر حفاظت می کنیم. و این امکان را داریم که دسترسی کلاینت های را به اینترنت کنترل کنیم.



  



نوشته شده در تاریخ 91/10/30 ساعت 12:36 ع توسط هاستینگ


- از کلمات عبور پیچیده استفاده کنید
کلمات عبور ساده بزرگترین مشکل امینتی را برای سرور شما به وجود می آورند. داشتن کلمات عبور امن و پیچیده (چه برای خود سرور و چه برای کاربرانی که روی سرور قرار دارند) بسیار با اهمیت است.به عنوان مثال اگر کاربر شما ازکلمه ی عبور ی استفاده کند که به راحتی توسط هکر ها قابل حدث زدن باشد در وحله ی اول باعث deface شدن سایت خود شده و اعتبار شرکت شما رو زیر سوال می برد دوم ممکن است از طریق این سایت برای ارسال ویروس و هرزنامه استفاده بشه یا بویسله ی local exploit ها به بقیه سایت ها آسیب برسونه.
شما می تونید با ویرایش تنظیمات مربوط به کلمات عبور در فایل /etc/login.defs بر اساس نوع کار شما با سرور و درجه ی امنیتی که برای خود در نظر می گیرید کاربران مجبور به داشتن کلمات عبور ایمن کنید.توضیحات کامل در مورد هر یک از پارامتر های فایل login.defs داخل خود فایل و در بالای هر کدام از پارامتر ها موجود می باشد.


معمولا کلمات عبور باید حداقل 8 حرفی و شامل حرف – عدد و علائم باشند. هیچ وقت از کلمات معنی دار یا تاریخ های مهم استفاده نکنید. اگر می خواهید امن بودن کلمه عبور خود را بررسی کنید می تونید اون را با استفاده از این نرم افزار (.) تست کنید . اگر ظرف ? – ? ساعت کلمه عبور شما crack شد یعنی کلمه عبور شما امن نیست.
همین سایت یک ابزار دیگه برای بررسی طول کلمات عبور کاربران سرور ساخته است بوسیله ی (.) می توانید لیست کاربرانی که از کمات عبور نا امن استفاده میکنند را پیدا کنید و به آنها هشدار دهید .

?- پروتکل SSH شما Secure است؟
سعی کنید همیشه از برای ورود به سرور از public key authentication استفاده کنید وهیچ وقت دسترسی SSH را برای عموم باز نگذارید. اگر از .استفاده می کنید می توانید نرم افزار putty agent را نصب کرده و key های SSH خود را مدیریت کنید.
همیشه پورت SSH را عوض کنید .معمولا طرف ابتدا به دنبال پورت 22 می گرده و اگر اطلاعات کافی در مورد سرور شما نداشته باشه از دسترسی به ssh نا امید خواهد شد . لذا هیچ وقت ssh را روی پورت 22 باز نگذارید. می توانید پورت ssh را از طریق ویرایش فایل etc/ssh/sshd_config به یک پورت باز دیگر مثلا ???? تغییر دهید. port 1654
از پروتکل 2 استفاده کنید . اگر از putty استفاده می کنید این نرم افزار قابلیت پشتیبانی از هر دو پروتکل را دارست پس نگرانی وجود ندارد . در همین فایل etc/ssh/sshd_config می توانید خط Protocol 2. را تایپ کنید.
در اکثر سیستم های لینوکس میتوانید محدودیت هایی را روی دستری های shell اعمال کنید . با استفاده از تنظیماتی که در /etc/security/limits.conf وجود دارد می توانید محدودیت های بسیار جالب را برای تک تک کاربران shell ایجاد کنیدتا استفاده ی نابجای آنها با استفاده وارد آوردن فشار بیش از حد به سرور شما و down شدن آن نشود .

 

3- وب سرور خود را secure کنید
مهمترین قسمتی که با عموم کاربران در ارتباط است و بیشتر مورد حمله و نفوذ قرار می گیرد همان webserver است .
یکی از بهترین ماژول هایی که برای جلوگیری از استفاده ی نابجا از وب سرور استفاده می شود mod_security است که در همین وب لاگ بار ها در موردش صحبت کردیم. البته خود اون فقط یک ابزاره و بقیش برمیگرده به هنر مدیر سرور در طراحی یک سری rule مناسب مخصوص اون سرور برای اطلاعات بیشتر به سایت های . و . سر بزنید.
توجه کنید که همیشه موقع compile کردن apache گزینه ی suexec حتما فعال باشد. فعال کردن این گزینه به معنی اجرا شدن اسکریپت های CGI تحت owner خود (مالک فایل) می باشد. این گزینه باعث جلوگیری از دسترسی فایل های CGI به فایل های سیستم میشه و همچنین برای جلوگیری از فایل هایی که باعث در سرور می شود بسیار مناسب است.
همچنین بعضی ها اعتقاد داند که باید PHPsuexec هم روی سرور فعال باشه این گزینه باعث میشه که فایل های php هم تحت کاربر خودشون اجرا بشن و با عث بالا بردن امنیت فایل های سیستمی و جلوگیری از استفاده نا بجا از این گونه اسکریپت ها میشه .
می تونید apache رو بوسیله ی دستور /scirpts/easyapach که به شما محیط نیمه گرافیکی میده یا با استفاده از خود whm که محیط کاملا گرافیکی داره compile کنید.
با استفاد از فعال کردن گزینه ی open_basedir در قسمت Tweak Security در WHM دسترسی کاربران را از مشاهده ی فایل هایی که خارج پوشه ی مربوط به خودشون هست بگیرید.
اگر خیلی از امنیت سرور خود حراس دارید و نمی توانید تک تک دسترسی ها مسدود کنید می توانید به راحتی در فایل php.ini گزینه ی safe mode را فعال کنید . Safe_mode=on این گزینه هر لحظه چکمیکنه که آیا کسیکه داره این فایل رو اجرا میکنه مالک اون قسمتهست یا نه و خیلی دستورات را خود به خود مسدود میکنه . و راحت ترین راه برای بستن دسترسی های اضافی روی سروره . البته باید گم که با فعال کردن این گزینه حدود 60 درصد از scirptها و کاربران به مشکل برمی خورند.


4- پارتیشن tmp را secure کنید
بله . مخصوصا گفتم پارتیشن چون بعضی ها اصلا براش partision نمی سازند . البته اگر سرورتون را از یک دیتا سنتر درست حسابی گرفته باشید خودشون موقع نصب سیتم عامل این کار رو انجام میدن.
ولی بازهم کافی نیست در قسمت fstab سیستم باید tmp حتما با گزینه ی nosetuid بسازید یا به اصطلاح mount کنید. این گزینه باعث میشه که تک تک proccess ها با سطح دسترسی executor اجرا شوند .این سطوح دسترسی قبلا در کرنل لینوکس تعریف شده. همچنین بعد از نصب cpanel می توانید گزینه ی noexec رو هم فعال کنید. این گزینه باعث میشه که هیچ فایل اجرایی داخل tmp اجازه ی اجرا شدن نداشته باشه . بعد از اینکه این کار و انجام دادید بوسیله scirpt از پیش آماده ی خود cpanel در آدرس /scirpts/securetmp برای پارتیشن tmp خود یک symlink یا شبه لینک به /var/tmp بسازید این خودش برای حفظ امنیت tmp موثره .5- غیر فعال کردن compiler ها برای کاربران دیگر
99 درصد کاربران نمی دونن compiler ها روی هاست به چه درد می خوه و اصلا استفاده ای از اونها ندارند پس چه بهتره برای همه ی کاربرانی که استفاده ندارند اون رو disable کنید . این کار رو می تونید در whm در قسمت Compilers Tweak انجام بدید . اکثر باگ های امینتی کشف شده نیار دارند تا همون موقع روی سرور compile بشن با غیر فعال کردن اون حال بسیاری از هکر ها رو میگیرید.6- از maildir به جای mailbox استفاده کنید
ما دونوع ذخیره سازی روی لینوکس داریم برای ایمیل ها . اولی به صورت mail box هست و دومی maildir که گزینه ی دوم بسیار از لحاظ امنیتی بهتره و باعث افزایش سرعت میل سرورتون هم میشه . البته در نسخه ی جدید cpanel به صورت پیش فرض maildir نصب میکنه ولی اگر سرورتون بیش از یک سال عمر داره و روش خاک نشسته بهتره همین حالا به maildir ارتقا بدید. قبلش از اطلاعاتتون backup بگیرید . بنده هیچ مسئولیتی در قبل از دست دادن اونها ندارم . می تونید از پشتیبانی دیتا سنترتون بخواید تا این کار رو انجام بده.7- سرویس های اضافی(services and daemons) را غیر فعال کنید
هر سرویس که روی سرور شما فعال باشه و به دیگران اجازه ی وصل شدن به اون وگرفتن اطلاعات به کاربران میده دارای باگ امینتی هست و اگر از اون استفاده نمی کنید باید اون رو ببندیدش . خود لینوکس هم یک سری سرویس های زائد(daemons) داره که برای یک سریس دهنده ی وب نیازی به اونها نیست .
سرویس های رو می تونید در /etc/xinetd.con ویرایش کنید .برای مثال سیستم اشتراک فایل (nfs/statd) یا سیستم مدیریت پرینت (cupsd) و خیلی daemonهای دیگه که توی آموزش مختصر مثل این نمی گنجه همش روبگم. از داخل whm در قسمت Service Manager می تونید سرویس هایی که نیار ندارید رو غیر فعال کنید . مثلا اگر از chat server خود cpanel استفاده نمی کنید اون رو غیر فعالش کنید چون خودش باعث مشکلاتی امنیتی خواهد شد .
این بخش از مهمترین کار هایی که باید یک مدیر سرور انجام بده .8- سرور خود را تحت کنترل داشته باشید یا مانیتور کنید
یک ادمین سرور باید به صورت 24 ساعته کلیه قسمت های سرور (نرم افزار ها – فایل های کاربران و …)* را تحت کنترل داشته باشد
اینکه نرم افزار های مورد استفاده روی سرور بروز هستند یا خیر و خیلی مسائل دیگر بسیار مهم هستند که این امر فقط با بررسی مداوم و سرکشی به صورت روزانه روی سرور ها عملی است.
البته می توانید حداقل 90 درصد این کار ها را با نوشتن scirpt* های دلخواه انجام دهید و شما فقط لوگ های مربوطه را چک کنید و فقط در مواقع ضروری روی سرور لوگین کنید .* در این جا برخی از command های پر استفاده رو در این ضمینه ارائه می کنم:netstat -anp : لیست کلیه connection های باز سرور را به شما می دهد تا به دنبال پورت ها یا نرم افزار های مشکوکی که روی سرور run هستند ولی شما اجاره اجرا شدن به انها نداده اید مشاهده کنید و در صورت لزوم بوسیله firewall دسترسی انها را مسدود کنید.find / \( -perm -a+w \) ! -type l >> world_writable.txt : این دستور لیست کلیه فایل هایی را که permission 777 دارند و توسط کلیه کاربران روی سرور قابلیت ویرایش دارند را به شما نشان میدهد (داخل فایل txtذخیره می کند) اکثر مشکلات امینی داخل همین فولدر ها اتفاق می افتد.ls /var/log/ : اکثر لوگ فایل ها داخل پوشه var هستند شما در صورت نیاز به لوگی از از هر سرویس خاصیمی توانید در این فولدر به آن مراجعه کنید (البته لوگ های apache در فولدر /usr/local/apache/logs هست)در کنار تمامی موارد scirpt های زیادی هستندکه به شما در این کار ها کمک می کنند . البته چیزی که بر حسب نیاز خودتون برای خودتون بنویسید مسلما یک چیز دیگس. یک سری برنامه ها اسمشون رو می نویسم که به درد می خورند .
Tripwire – این نرم افزاری هست که md5 کلیه فایل های مربوط به سیستم را چک می کنه و در صورتی که این فایل ها تغییر کند به شما هشدار می دهد.
. or .
Chrookit – نرم افزاری برای پیدا کردن trojan – backdoor و غیره بر روی سرور.

.
Rkhunter – نرم افزاری برای پیدا کردن trojan – backdoor و غیره بر روی سرور.
.
Logwatch – نرم افزاری برای بررسی لوگ ها و فعالیت های سرور به صورت روزانه و تهیه گزارش کامل برای شما
.


9- حتما یک firewall نرم افزاری داشته باشید !!
اگر firewall سخت افزاری هم دارید باید یک فایروال جداگانه روی سرور داشته باشید .
با استفاده از firewall می تونید لیست پورت هایی که استفاده نمی شوند رو محدود کنید و با این کار حجم زیادی از نرم افزار های backdoor و … را از کار بیاندازید . همچنین با استفاده از firewall* می توانید ادرس های ip خاصی را block کنید و حتی در مقابل حملات ddos اسیب ناپذیر باشید.
در زیر لیست پورت های مورد نیاز cpanel امده است( اگر سرویس دیگری ندارید می توانید بقیه پورت ها را به غیر از این ها ببندید . چون نیازی به انها ندارید ) : .
بهترین firewall از نظر من روی cpanel هم نصب میشه و خوب جواب میده همون APF هست که با rule های خود لینوکس iptables کار می کنه.
اگر شما هم با* این نرم افزار کار می کنید اینجا رو مطالعه کنید : .


10 - همیشه بروز باشید
80 در صد مشکلات امینتی در روز های اول عمرشون براشون patch و update امنیتی میاد یعنی یک bug هرچقدر هم که underground باشد بالاخره براش patch نوشته می شود* پس سعی کنید که همیشه از آخرین نسخه های نرم افزار استفاده کنید . نسخه ی کرنل حداقل هر 2 ماه یک بار باید بروز بشه بقیه نرم افزار ها باید هر هفته چک بشن و در صورت لزوم update بشوند. خود cpanel باید هر روز updateشود به دلیل اینکه هر روز شرکت سی پنل به روز می شود .



  





طراحی پوسته توسط تیم پارسی بلاگ